/*
 * @Description:
 * @Author: your name
 * @version:
 * @Date: 2024-05-08 14:31:24
 * @LastEditors: your name
 * @LastEditTime: 2024-09-10 09:24:31
 */
import axios from "axios";
const api = axios.create({
  baseURL: import.meta.env.VITE_BASE_URL, // 所有请求的公共地址部分
  headers: { "Content-Type": "application/json;charset=UTF-8" },
  timeout: 30000, // 请求超时时间
});

api.interceptors.request.use(// 请求拦截器
  (config) => {// 处理请求之前的操作
    // config 请求的所有信息
    return config; // 将配置完成的config对象返回出去 如果不返回 请求讲不会进行
  },
  (err) => {  // 请求错误处理
    // 请求发生错误时的相关处理 抛出错误
    Promise.reject(err);
  }
);

api.interceptors.response.use(// 响应拦截器
  (response) => {
    const data = response.data;
    console.log(data);
    if (data.code === 200 || data.info==='OK') {// 服务器返回的状态码为200 或者info为OK
      return data;
    } else {
      return Promise.reject(data);// 服务器返回的状态码不为200 抛出错误
    }
  },
  (err) => {// 响应错误处理
    return Promise.reject(err.response);// 抛出错误
  }
);


export default api;